#include<stdio.h>

int n1[10]={1,2,3,4,5,6,7,8,9};
int n2[10]={9,8,7,6,5,4,3,2,1};
int rst[50]={0};

int main()
{   
        for(int i=0;i<9;i++)
    {
        for(int j=0;j<9;j++)
        {
        rst[i+j]+=n1[8-i]*n2[8-j];      //计算乘积的每一位结果
        }
    }

   for(int j=0;j<49;j++)   
   {
    if(rst[j]>=10)                        //模拟进位
        {
            rst[j+1]+=rst[j]/10;            //可能进位>1，需要进位的值 为 低位/10的值
            rst[j]=rst[j]%10;
        }
   }


    int flag = 0;   
    for(int l=50;l>=0;l--)                 //从a[50]开始 倒序输出
    {
        //从第一个非0数开始打印,滤除前面的0
        if(rst[l] !=0 )
        flag = 1 ;
        if(flag==1)
        printf("%d",rst[l]);
        
    }
    printf("\n");
return 0;
}










/*  显示两个乘数
 
    for(int i=0;i<9;i++)
    {printf("%d",n1[i]);}
    printf("\n");
    for(int i=0;i<9;i++)
    {printf("%d",n2[i]);}
    
    
*/
